/*
 *  CESliderInterface.h
 *  LID Library
 *
 *  Created by Alexander Trutchenko on 09/11/11.
 *  Copyright 2011 League of Independent Developers. All rights reserved.
 *
 */

#ifndef __CE_SliderInterface_h__
#define __CE_SliderInterface_h__

#include "cocos2d.h"
#include <list>

namespace cocosext {


/////////////////////////////////////////////////////
//
/** CESliderInterface 
 * 
*/
/////////////////////////////////////////////////////

class CESliderDelegate;

class CESliderInterface
{
public:
    /* Get/set slider value */
    virtual float getValue() const = 0;
    virtual void setValue(float value) = 0;

    /* Enable/disable slider */
    virtual void setIsEnabled(bool enabled) = 0;
    virtual bool isEnabled() const = 0;

    /* Register/unregister delegates */
    virtual void registerDelegate(CESliderDelegate* delegate, bool synchronize) = 0;
    virtual void unregisterDelegate(CESliderDelegate* delegate) = 0;

	/* Get/set slider tag */
    virtual int getSliderTag() const = 0;
    virtual void setSliderTag(int sliderTag) = 0;
};

}; // end namespace cocosext

#endif // __CE_SliderInterface_h__
